const app = getApp(); // 获取全局的app实例
 
// 封装 wx.request
function request(options) {
  return new Promise((resolve, reject) => {
    wx.request({
      url: options.url,
      method: options.method || 'GET',
      data: options.data || {},
      header: options.header || {
        'content-type': 'application/json' // 默认是JSON格式
      },
      success: function(res) {
        if (res.statusCode >= 200 && res.statusCode < 300) {
          resolve(res.data); // 请求成功时，返回数据
        } else {
          wx.showToast({
            title: '服务器错误',
            icon: 'none',
            duration: 2000
          });
          reject(res); // 请求失败时，返回错误信息
        }
      },
      fail: function(err) {
        wx.showToast({
          title: '请求失败',
          icon: 'none',
          duration: 2000
        });
        reject(err); // 网络请求失败时，返回错误信息
      }
    });
  });
}
 
// 导出 request 方法，便于其他文件调用
module.exports = {
  request,
  get: function(url, data) {
    return request({ url, method: 'GET', data });
  },
  post: function(url, data) {
    return request({ url, method: 'POST', data });
  }
};